- Introduction
- Version Compatibility
- Installation
- Configuration
- Permissions
- CRM Overview
- How To
- How to Open CRM
- How to Use the Dashboard
- How to Create a Contact
- How to Edit or Delete a Contact
- How to Import Contacts
- How to Export Contacts
- How to Upload or Remove a Contact Avatar
- How to Link a Contact with a Company
- How to Use Helpdesk Integration for a Contact
- How to Create a Company
- How to Edit or Delete a Company
- How to Import Companies
- How to Export Companies
- How to Create a Deal
- How to Edit or Delete a Deal
- How to Use the Deal Pipeline
- How to Change Deal Stage with Drag and Drop
- How to Use Territories in Deals
- How to Mark a Deal as Won or Lost
- How to Import Deals
- How to Export Deals
- How to Create a Lead
- How to Edit or Delete a Lead
- How to Import Leads
- How to Export Leads
- How to Convert a Lead
- How to Add Activities
- How to Send an Email Activity
- How to Review Automatic CRM Activities
- How to Use Email Templates
- How to Use Analytics
- How to Export Analytics
- How to Use the Audit Log
- How to Link CRM Records with Redmine Issues
- How to Use Custom Fields
- How to Use Privacy Controls
- How to Use the CRM API
- Recommended Role Configurations
- Troubleshooting
- Frequently Asked Questions (FAQ)
- Uninstallation of Plugin
- Updates and Revisions
- Conclusion
Introduction #
Redmineflux CRM is a CRM Plugin for Redmine that helps teams manage leads, contacts, companies, deals, activities, analytics, and CRM-linked issue workflows from inside Redmine.
The plugin is built around a global CRM workspace available from the Redmine top menu. From that workspace, users can open dashboard summaries, manage customer and sales records, track pipeline progress, review activity history, export CRM data, and connect CRM records with Redmine issues.
The current CRM implementation includes:
- Contact management
- Company management
- Deal and pipeline management
- Lead management and lead conversion
- Activity timeline and email activities
- Analytics and dashboard reporting
- Audit log visibility
- CSV/XLS/PDF export support in selected areas
- Privacy controls
- Custom fields
- Issue linking
- JSON API endpoints
Version Compatibility #
Based on the current plugin documentation and codebase, the plugin is intended for:
- Redmine 4.x
- Redmine 5.x
- Redmine 6.x
- Ruby 2.5+
- Rails 5.2+
Installation #
To install the Redmineflux CRM plugin:
- Make sure Redmine is already installed and working.
- Copy the plugin folder into the Redmine plugins directory as
redmineflux_crm. - Install bundle dependencies if required by your Redmine environment:
bundle install - Run the plugin migrations.
For production:
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
For development:bundle exec rake redmine:plugins:migrate RAILS_ENV=development - Restart Redmine.
Example:
bundle exec rails server - Log in as Administrator, go to Administration > Roles and Permissions, and grant the required CRM permissions to the appropriate roles.
Configuration #
To configure plugin-level CRM settings:
- Log in as Administrator.
- Open Administration.
- Open Plugins.
- Find Redmineflux CRM.
- Click Configure.
From plugin configuration, administrators can manage:
- Default currency
- Deal stages
- Territories
- Lead statuses
- Lead sources
Default values in the current plugin include:
- Default currency:
USD - Deal stages:
New,Qualified,Proposal,Negotiation,Won,Lost - Lead statuses:
New,Contacted,Qualified,Unqualified - Lead sources:
Website,Referral,Cold Call,Email Campaign,Social Media,Other
Important notes on configuration:
- The default currency applies to all new deals. Once a deal is created, its currency cannot be changed.
- The stages
WonandLosthave special closed-deal behavior. Deals in these stages are excluded from the open deals count. Do not remove them unless you have custom equivalents. - Do not remove the
Qualifiedstatus from lead statuses. It is required for the lead conversion feature to work. - Do not add
Convertedto the lead statuses list manually. It is reserved by the system and applied automatically during lead conversion. - Changing stages or statuses does not retroactively affect existing records. Existing records keep their current values.
Permissions #
The plugin uses global permissions. Depending on the role, administrators can grant:
- View CRM
- Manage Contacts
- Manage Companies
- Manage Deals
- View Pipeline
- Manage Leads
- Manage CRM Activities
- View Audit Log
- Delete CRM Data
For issue linking, the user must also have permission to edit issues in the related Redmine project.
Important note on Manage CRM Activities:
- This permission allows users to log new activities and delete activities they authored. There is no edit or update function for activities. Once an activity is saved, its content cannot be changed.
CRM Overview #
The main CRM navigation currently includes:
- Dashboard
- Leads
- Contacts
- Companies
- Deals
- Analytics
- Audit Log, when permitted
- Plugin Settings, for administrators
The plugin supports the following major workflows:
- Managing contacts and customer organizations
- Tracking sales opportunities
- Moving deals across stages
- Recording calls, meetings, notes, tasks, and emails
- Converting qualified leads into contacts and deals
- Reviewing pipeline summaries and analytics
- Linking CRM data with issues
- Exporting business data
How To #
This section explains the major user actions available in the CRM plugin step by step.
How to Open CRM #
To open the CRM system:
- Log in to Redmine.
- Click CRM from the top menu.
This opens the global CRM workspace. Users only see records that are visible to them based on permissions and privacy rules.
How to Use the Dashboard #
The Dashboard provides a business summary view and quick entry points into the CRM.
It currently shows:
- Total contacts
- Total companies
- Total open deals
- Unconverted leads
- Recent contacts
- Recent deals
- Upcoming deals
- Recent activities
- Pipeline summary by stage
To use the Dashboard:
- Open CRM.
- Open Dashboard from the left navigation.
- Review summary cards and recent activity panels.
- Use Quick Create to open a new lead, contact, company, or deal form.
- Use the Export option to download dashboard data.
Dashboard exports currently support:
- CSV
- XLS
How to Create a Contact #
To create a new contact:
- Open CRM.
- Click Contacts.
- Click New Contact.
- Enter the contact details.
- Save the record.
The contact form currently supports:
- First name
- Last name
- Phone
- Mobile
- Job title
- Address
- Contact type (Person or Company)
- Company
- Assignee
- Tags
- Notes
- Privacy flag
- Avatar upload
- Custom fields
Important notes:
- First name is required
- Email is required
- Email must be unique across all contacts
- Phone and mobile values are validated for international number length (7 to 15 digits)
- Tags are case-insensitive and separated by commas
How to Edit or Delete a Contact #
To edit a contact:
- Open Contacts.
- Open the target contact.
- Click Edit.
- Update the values.
- Save the record.
To delete a contact:
- Open the contact.
- Click Delete.
- Confirm the action.
Deleting requires the Delete CRM Data permission.
When a contact is deleted:
- All activities linked to that contact are permanently removed
- All Redmine issue links for that contact are removed
- Any deals that were linked to that contact have their contact reference cleared, but the deals themselves are not deleted
- The company record is not affected
How to Import Contacts #
The plugin supports CSV import for contacts.
To import contacts:
- Open Contacts.
- Click Import.
- Upload a CSV file with a header row.
- Submit the import.
The current import process:
- Accepts CSV input
- Skips duplicates based on email address
- Creates new contact records for valid rows
- Reports imported, duplicate, and invalid row counts after completion
The CSV file must include a header row. The supported column names are:
first_name(required)last_nameemail(required, duplicate check)phonemobilejob_titleaddresscompany_name(used to look up and link an existing company by name; a new company is not created during contact import)notestags(comma-separated values)assigned_to(Redmine login name)is_private(accepted values: 1, true, yes, y — anything else is treated as public)
Important note:
- Save the CSV file in UTF-8 encoding to avoid character encoding issues with international characters
How to Export Contacts #
To export contacts:
- Open Contacts.
- Use the Export menu.
- Choose the export format.
Current export formats:
- CSV
- XLS
The export includes all contacts currently visible to the logged-in user, not just the current page.
How to Upload or Remove a Contact Avatar #
The contact form supports avatar upload and avatar removal.
To upload an avatar:
- Open a new or existing contact form.
- Use the Profile Photo field.
- Select an image file.
- Save the form.
To remove an avatar:
- Open the contact edit form.
- Enable the remove avatar option.
- Save the form.
Important note:
- Avatar upload size is limited to 2 MB
How to Link a Contact with a Company #
Contacts can be linked to companies from the contact form.
To link a contact to a company:
- Open the contact form.
- Select the company in the company field.
- Save the contact.
Users can also create a contact directly from a company page. In that flow, the company is preselected and locked into the form.
How to Use Helpdesk Integration for a Contact #
The plugin includes optional helpdesk integration behavior when the Redmineflux Helpdesk plugin is installed.
If available, a contact can:
- Link to a Redmine helpdesk customer user
- Show recent issues created by that linked user
- Show additional customer organization or SLA details when present
- Link to products when the contact-products integration table exists
If the helpdesk plugin is not installed, those sections stay inactive or hidden.
How to Create a Company #
To create a company:
- Open CRM.
- Click Companies.
- Click New Company.
- Enter the company details.
- Save the record.
The company form currently supports:
- Name
- Phone
- Website
- Address
- Industry
- Employee count
- Assignee
- Tags
- Notes
- Privacy flag
- Custom fields
Important notes:
- Company name is required
- Company name must be unique
- If a bare domain is entered in the Website field (for example,
acmecorp.com), the plugin automatically converts it tohttps://acmecorp.combefore saving
How to Edit or Delete a Company #
To edit a company:
- Open Companies.
- Open the target company.
- Click Edit.
- Update the values.
- Save the record.
To delete a company:
- Open the company.
- Click Delete.
- Confirm the action.
Deleting requires the Delete CRM Data permission.
When a company is deleted:
- All activities linked to that company are permanently removed
- All contacts that were linked to this company have their company reference cleared, but the contacts themselves are not deleted
- All deals that were linked to this company have their company reference cleared, but the deals themselves are not deleted
How to Import Companies #
To import companies:
- Open Companies.
- Click Import.
- Upload a CSV file with a header row.
- Submit the import.
The current import creates company records from valid CSV rows and supports privacy values from CSV.
The CSV file must include a header row. The supported column names are:
name(required, duplicate check by name or email — if either matches an existing company the row is skipped)email(duplicate check by email if provided — also triggers duplicate detection)phonewebsite(bare domains are automatically prefixed with https://)industryemployee_count(numeric)addressnotestags(comma-separated values)assigned_to(Redmine login name)is_private(accepted values: 1, true, yes, y)
Important note:
- Save the CSV file in UTF-8 encoding to avoid character encoding issues
How to Export Companies #
To export companies:
- Open Companies.
- Use the Export menu.
- Choose the export format.
Current export formats:
- CSV
- XLS
The export includes all companies currently visible to the logged-in user.
How to Create a Deal #
Deals represent opportunities in the sales process.
To create a deal:
- Open CRM.
- Click Deals.
- Click New Deal.
- Enter the deal details.
- Save the record.
The deal form currently supports:
- Name
- Amount
- Currency
- Stage
- Probability
- Due date
- Closed date
- Contact
- Company
- Assignee
- Territory
- Tags
- Description
- Lost reason
- Privacy flag
- Custom fields
Important notes:
- Deal name is required
- Stage is required
- Probability must be between 0 and 100
- Lost reason is required when the stage is
Lost - The currency is set from the plugin default currency and cannot be changed after the deal is created
- The forecasted value of a deal is calculated as amount multiplied by probability divided by 100. For example, a deal worth 10,000 with 60 percent probability has a forecasted value of 6,000.
How to Edit or Delete a Deal #
To edit a deal:
- Open Deals.
- Open the target deal.
- Click Edit.
- Update the values.
- Save the record.
To delete a deal:
- Open the deal.
- Click Delete.
- Confirm the action.
Deleting requires the Delete CRM Data permission.
When a deal is deleted:
- All activities linked to that deal are permanently removed
- All Redmine issue links for that deal are removed
- The linked contact and company records are not affected
How to Use the Deal Pipeline #
The Pipeline is the visual stage-based deal board.
It currently supports:
- Stage columns showing deal cards grouped by stage
- Territory filtering
- Open pipeline value showing the total amount of all open deals
- Weighted forecast showing the sum of forecasted values across all open deals
- Won revenue showing the total amount of all won deals
- Drag-and-drop stage changes
To use the Pipeline:
- Open Deals.
- Open the pipeline view.
- Review deals grouped by stage.
- Review the open pipeline value, weighted forecast, and won revenue shown at the top.
- Apply territory filtering if needed.
- Drag deals to another stage when updating opportunity progress.
How to Change Deal Stage with Drag and Drop #
To move a deal between stages:
- Open the Pipeline.
- Locate the deal card.
- Drag the card to another stage column.
- Drop it in the target column.
When the update succeeds:
- The stage is updated
- A CRM activity note is created for the stage change
Important notes:
- Drag-and-drop requires JavaScript to be enabled in the browser
- Deals that are already in the Won or Lost stage cannot be moved to another stage using drag-and-drop. The update will be rejected. Use the deal edit form to change the stage on a closed deal.
How to Use Territories in Deals #
The plugin supports territories in deals for filtering and organization.
To use territories:
- Open the deal form.
- Select a configured territory, or choose the custom option when available.
- Save the deal.
In the pipeline:
- Open the territory filter.
- Select a territory.
- Review deals limited to that territory.
How to Mark a Deal as Won or Lost #
To mark a deal as won:
- Open the deal form.
- Change the stage to
Won. - Save the deal.
When a deal is marked as won, it is treated as closed and excluded from the open deals count on the dashboard and analytics.
To mark a deal as lost:
- Open the deal form or move the deal to the Lost stage.
- Enter a lost reason.
- Save the deal.
When a deal is marked as lost, it is also treated as closed and excluded from the open deals count.
Important notes:
- The current plugin requires a lost reason whenever the deal stage is
Lost - Won and lost deals both count toward the win rate calculation in analytics
- Once a deal reaches the Won or Lost stage, the stage cannot be changed again. The stage update endpoint rejects changes on closed deals. If you need to reopen a deal, edit the deal form directly and change the stage manually.
How to Import Deals #
To import deals:
- Open Deals.
- Click Import.
- Upload a CSV file with a header row.
- Submit the import.
The current import:
- Accepts deal rows from CSV
- Matches deals to existing contacts by contact_email and to existing companies by company_name
- Skips duplicate deals where the same deal name already exists for the matched contact and company combination
The CSV file must include a header row. The supported column names are:
name(required)amount(numeric decimal)currency(defaults to the plugin default currency if not provided)stage(must match a valid configured stage, defaults to the first configured stage)probability(numeric, 0 to 100)due_date(format: YYYY-MM-DD)contact_email(links the deal to the matching contact by email)company_name(links the deal to the matching company by name)descriptiontags(comma-separated values)assigned_to(Redmine login name)is_private(accepted values: 1, true, yes, y)
Important note:
- Save the CSV file in UTF-8 encoding to avoid character encoding issues
How to Export Deals #
To export deals:
- Open Deals.
- Use the Export menu.
- Choose the export format.
Current export formats:
- CSV
- XLS
The export includes all deals currently visible to the logged-in user.
How to Create a Lead #
Leads are pre-conversion CRM records used before a contact or deal is finalized.
To create a lead:
- Open CRM.
- Click Leads.
- Click New Lead.
- Enter the lead details.
- Save the record.
The lead form currently supports:
- First name
- Last name
- Phone
- Company name
- Source
- Status
- Assignee
- Notes
- Privacy flag
- Custom fields
Important notes:
- First name is required
- Email is required
- Email must be unique across all leads
- Status is required and defaults to New
- The Converted status cannot be set manually. It is applied automatically during lead conversion.
How to Edit or Delete a Lead #
To edit a lead:
- Open Leads.
- Open the target lead.
- Click Edit.
- Update the values.
- Save the record.
To delete a lead:
- Open the lead.
- Click Delete.
- Confirm the action.
Deleting requires the Delete CRM Data permission.
Important note:
- Converted leads cannot be deleted
How to Import Leads #
To import leads:
- Open Leads.
- Click Import.
- Upload a CSV file with a header row.
- Submit the import.
The current import:
- Accepts CSV rows with lead information
- Supports privacy values from CSV
- Skips duplicate lead emails
The CSV file must include a header row. The supported column names are:
first_name(required)last_nameemail(required, duplicate check)phonecompany_namesource(defaults to Other if not provided)status(must match a valid configured status, defaults to New)notesassigned_to(Redmine login name)is_private(accepted values: 1, true, yes, y)
Important note:
- Save the CSV file in UTF-8 encoding to avoid character encoding issues
How to Export Leads #
To export leads:
- Open Leads.
- Use the Export menu.
- Choose the export format.
Current export formats:
- CSV
- XLS
The export includes all leads currently visible to the logged-in user.
How to Convert a Lead #
The plugin supports lead conversion into a contact and optionally a deal.
To convert a lead:
- Open a lead.
- Confirm the lead status is Qualified.
- Click Convert.
- Review the conversion form.
- Choose whether to create a deal. If creating a deal, provide the deal name (required), deal amount (optional), deal stage (defaults to New), and any deal custom field values if configured.
- Save the conversion.
Important conversion rules in the current implementation:
- Only leads with status Qualified can be converted
- Converted leads cannot be converted again
- Converted lead status becomes
Convertedautomatically - The plugin tries to reuse an existing contact with the same email
- If an existing contact is found, the lead data is merged in only where the contact fields are blank
- The plugin tries to reuse an existing company with the same company name
- If no existing company is found, a new company is created when a company name is present on the lead
- A new deal can be created during conversion, including deal custom field values
- Lead conversion generates an automatic CRM activity entry on the lead
After conversion, you are redirected to the contact detail page.
How to Add Activities #
Activities help track communication and follow-up history for contacts, companies, deals, and leads.
Supported activity types are:
- Note
- Call
- Meeting
- Task
To add an activity:
- Open a contact, company, deal, or lead.
- Go to the Recent Activities section.
- Click Add Activity.
- Select the activity type using the pill buttons.
- Enter the content and related details.
- Save the activity.
Important note:
- Only the activity author or an administrator can delete an activity
How to Send an Email Activity #
The plugin supports email-type activities from the CRM timeline.
To create an email activity:
- Open the activity form on a contact, company, deal, or lead.
- Choose
Emailas the activity type. - Enter:
- Email subject (required)
- From address (required, pre-filled with your Redmine account email)
- To address (required, must be a valid email address)
- Email content (required)
- Save the activity.
When email sending succeeds, the timeline can show:
- Sent status
- Sent time
When email sending fails, the timeline can show:
- Failed status
- Error details
Important note:
- Actual delivery depends on Redmine mail configuration
How to Review Automatic CRM Activities #
The plugin automatically logs some CRM events as system-generated activities.
Current automatic activity tracking includes:
- Record creation
- Deal stage change
- Lead status change
- Assignee change
- Lead conversion
To review them:
- Open a CRM record.
- Review the Recent Activities timeline.
- Identify entries marked as system or auto-generated.
Important note:
- Auto-generated activities cannot be deleted by regular users
How to Use Email Templates #
The plugin provides pre-written email templates on the contact detail page to help with consistent outreach.
Available templates:
- Introduction
- Follow-up
- Meeting Request
- Thank You
- Proposal
To use an email template:
- Open a contact detail page.
- Scroll to the Email Templates section.
- Click the template button.
- The activity form opens pre-filled with the template subject and body.
- Edit the content as needed.
- Save the activity.
Important note:
- Templates support the
%{first_name}placeholder, which is automatically replaced with the contact’s first name when the template is loaded
How to Use Analytics #
The Analytics page provides reporting and visual CRM performance summaries.
Current analytics include:
- Total deals
- Open deals
- Won deals
- Lost deals
- Total deal value
- Open deal value
- Won deal value
- Weighted forecast
- Win rate
- Average deal value
- Contacts with deals
- Contacts without deals
- Active contacts in the last 30 days
- Pipeline by stage
- Deal momentum trends
- Win/loss mix
- Top deal owners
To use Analytics:
- Open CRM.
- Click Analytics.
- Select the reporting period.
- Review KPI cards and charts.
Current period filters:
- This Week
- This Month
- This Quarter
- This Year
How to Export Analytics #
To export analytics:
- Open Analytics.
- Click Export.
- Choose the format.
Current export formats:
- CSV
Important note:
- The PDF export uses embedded Unicode fonts and correctly renders all languages including Japanese, Russian, Polish, and other non-Latin scripts
How to Use the Audit Log #
The Audit Log provides a searchable cross-record activity history for CRM events.
To use the Audit Log:
- Open CRM.
- Click Audit Log.
- Filter by activity type if needed.
- Search by activity content.
This is useful for reviewing:
- Manual user activities
- System-generated CRM events
- Email activity results
Important note:
- The Audit Log is read-only. Entries cannot be edited or deleted by any user, including administrators.
How to Link CRM Records with Redmine Issues #
The plugin supports linking CRM records directly with Redmine issues.
Current linking behavior:
- One contact can be linked to an issue
- One deal can be linked to an issue
- Existing links can be replaced
To link CRM records to an issue:
- Open a Redmine issue.
- Locate the CRM sidebar or CRM panel.
- Add or change the linked contact.
- Add or change the linked deal.
To unlink a CRM record:
- Open the issue.
- Use the Unlink action beside the linked contact or deal.
- Confirm the action.
To create a new CRM record directly from an issue:
- Open a Redmine issue.
- Use the New Contact or New Deal shortcut buttons in the CRM panel.
- Fill in the form.
- Save. The new record is automatically linked to the issue.
Important notes:
- The user must have permission to edit issues in the related project
- Linked contacts and deals are visible from the CRM record’s Linked Redmine Issues section
How to Use Custom Fields #
The plugin supports Redmine custom fields on:
- Contacts
- Companies
- Deals
- Leads
To use custom fields:
- Configure the custom fields in Redmine Administration under Custom Fields.
- Open the CRM form for the relevant entity.
- Enter values in the custom field section.
- Save the record.
Custom field values are also shown on detail pages when populated and visible. During lead conversion, deal custom fields can be filled in directly on the conversion form.
How to Use Privacy Controls #
Contacts, companies, deals, and leads support private visibility.
To mark a record as private:
- Open the record form.
- Enable the private checkbox.
- Save the record.
Current visibility rules:
- Admins can see all records
- Non-admin users can see public records
- Non-admin users can also see private records they created
- Non-admin users can also see private records assigned to them
Important note:
- Dashboard and list counts only reflect records visible to the currently logged-in user. Private records hidden from a user are not counted in their totals.
How to Use the CRM API #
The plugin exposes JSON API endpoints under the /api namespace. This allows external applications to read and write CRM data programmatically.
Authentication uses Redmine’s standard API key. Include the key in the X-Redmine-API-Key request header.
Current API coverage includes:
- Dashboard —
GET /api/crm - Reports —
GET /api/crm_reports - Audit logs —
GET /api/crm_audit_logs - API health check —
GET /api/crm/ping - Contacts — list, show, create, update, delete, import, export
- Companies — list, show, create, update, delete, import, export
- Deals — list, show, create, update, delete, import, export, pipeline view
- Deal stage update —
PUT /api/deals/:id/update_stage - Leads — list, show, create, update, delete, import, export
- Lead conversion —
POST /api/leads/:id/convert - Activities — list, create, delete (nested under contacts, companies, deals, or leads)
- Issue link operations — link contact, unlink contact, link deal, unlink deal
The API supports core listing, creation, deletion, import, export, stage updates, and lead conversion workflows depending on the endpoint.
Important note:
- API requests respect the same permission rules as the web interface. A user without Manage Contacts permission will receive a 403 response when attempting to create or update a contact through the API.
Recommended Role Configurations #
The following role setups are recommended based on common team structures.
Important note: Manage Contacts, Manage Companies, Manage Deals, and Manage Leads do not include the ability to delete records. Deletion requires the separate Delete CRM Data permission.
Sales Representative:
- View CRM
- Manage Contacts
- Manage Companies
- Manage Deals
- View Pipeline
- Manage Leads
- Manage CRM Activities
Sales Manager (all Sales Representative permissions plus):
- View Audit Log
- Delete CRM Data
Read-Only Viewer:
- View CRM only
Troubleshooting #
If you face issues with the plugin, try the following:
- Confirm the plugin folder is
plugins/redmineflux_crm - Re-run plugin migrations:
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
- Restart Redmine
- Confirm the user has the required global CRM permissions
- Confirm the user has issue edit permission for issue linking
- Verify that the record is not hidden by privacy rules
- Check Redmine logs for controller, mailer, or migration errors
- If avatar uploads fail, verify write access to
public/uploads/contacts/avatars - If email activities fail, verify Redmine outgoing mail configuration in Administration > Settings > Email notifications
- If drag-and-drop in the pipeline does not update the stage, confirm that JavaScript is enabled in the browser and that the user has Manage Deals permission. Check the browser console for network errors on the
/deals/:id/update_stagerequest. - If a CSV import produces many Invalid rows, check that the header row uses the exact column names listed in the import documentation for that entity, that all required fields are present, and that the file is saved in UTF-8 encoding
- If the analytics PDF export shows garbled or missing characters, confirm you are using plugin version 1.0.0 or later, which includes embedded Unicode fonts for all language scripts
Frequently Asked Questions (FAQ) #
Q1. Is Redmineflux CRM global or project-specific?
The current user interface is centered around a global CRM workspace opened from the top menu. It also supports issue-level integration inside projects.
Q2. Can I manage contacts, companies, deals, and leads separately?
Yes. Each entity has its own list, detail page, create form, edit form, import flow, and export flow.
Q3. Does the plugin support a sales pipeline?
Yes. The plugin includes a visual deal pipeline with stage-based organization and drag-and-drop updates.
Q4. Can I convert leads into contacts and deals?
Yes. Qualified leads can be converted into a contact and optionally a deal.
Q5. Can I track calls, notes, meetings, and emails?
Yes. The activity timeline supports note, call, meeting, email, and task activities.
Q6. Are some activities created automatically?
Yes. The plugin automatically records some system-generated activities such as record creation, stage changes, status changes, assignee changes, and lead conversion events.
Q7. Are private CRM records supported?
Yes. Contacts, companies, deals, and leads support private visibility rules.
Q8. Does the plugin support custom fields?
Yes. Contacts, companies, deals, and leads support Redmine custom fields.
Q9. Can I link CRM records to issues?
Yes. One contact and one deal can be linked to an issue, and those links can be changed or removed later.
Q10. Does the plugin include exports and API access?
Yes. The plugin supports multiple export flows and also includes JSON API endpoints for the main CRM resources.
Q11. What happens to contacts and deals when I delete a company?
The company record is deleted. All contacts and deals that were linked to that company have their company reference cleared, but they are not deleted. You can re-link them to another company at any time.
Q12. Can I change the configured deal stages after going live?
Yes. You can add, rename, or remove stages in plugin settings at any time. Existing deals keep their current stage value even if that stage name is removed from the list. They are not automatically updated.
Q13. Why is the Convert button not showing on my lead?
The Convert button only appears when the lead status is exactly Qualified and the lead has not already been converted. Update the lead status to Qualified to enable the button.
Q14. Can I import the same CSV file twice?
Duplicate detection prevents the same email address from being imported a second time. Re-importing the same file will result in all rows being counted as duplicates and none being inserted again.
Uninstallation of Plugin #
To uninstall the plugin:
- Go to the Redmine installation directory.
- Take a full database backup before proceeding.
- If you want to roll back database changes, run the following command. This will permanently delete all CRM data including contacts, companies, deals, leads, activities, and audit logs. This action cannot be undone.
bundle exec rake redmine:plugins:migrate NAME=redmineflux_crm VERSION=0 RAILS_ENV=production - Remove the plugin folder:
plugins/redmineflux_crm - Restart Redmine.
If you skip step 3, the database tables remain but are unused. The CRM menu and all routes will no longer be available after the plugin folder is removed.
Updates and Revisions #
This knowledgebase is based on the currently available Redmineflux CRM plugin implementation in this codebase.
The documented areas were prepared from the current routes, controllers, models, views, settings, and migration-backed features, including:
- Dashboard and export flows
- Contacts and avatar support
- Companies and related CRM relationships
- Deals, territories, lost reason, pipeline, and forecasted value
- Leads and conversion logic
- CRM activities, email templates, and email delivery tracking
- Analytics and audit log behavior
- Issue linking support
- Privacy rules
- API routes
- Recommended role configurations
Conclusion #
Redmineflux CRM is a practical CRM Plugin for Redmine that combines customer records, sales tracking, lead conversion, activity history, analytics, and issue integration in one workflow. The current implementation is best suited for teams that want CRM visibility inside Redmine without leaving their existing issue and project environment.